一、应用场景
用户基础信息是提供给第三方应用管理和查询用户信息的功能。第三方应用可以通过用户基础信息获取物联云平台的用户信息,以及对其进行管理。用户基础信息的调用目前提供两种方式,企业成员级别的调用和平台级别的调用。使用企业成员级别的调用时,需要确保该企业成员具有相应的权限。
- 用户上传个人的头像。
二、功能说明
用户信息会通过自主注册或第三方平台登录被创建至物联云平台中。第三方应用可通过物联云平台提供的接口获取已创建的用户信息。
三、前提条件
1.用户自主完成账号注册。
2.用户已通过第三方平台登录至物联云平台。
四、关键流程
4.1 用户信息管理
流程说明:
- 首先,C端APP用户登录到物联网中台,获取到物联网中台的用户级调用凭证以及刷新凭证。
- 其次,C端APP用户使用物联网中台刷新凭证发起 查询用户详细信息 或者 设置用户基本信息 请求。
- 再次,物联网中台接收到 查询用户详细信息 或者 设置用户基本信息 请求,根据请求类别不同进行不同的业务逻辑处理。
- 最后,物联网中台根据不同的请求类别返回不同的响应信息。
4.2 管理台查询用户信息
流程说明:
- 首先,B端成员登录到物联网中台,获取到物联网中台的成员级调用凭证以及刷新凭证。
- 其次,B端成员使用物联网中台刷新凭证发起 管理台查询用户信息 请求。
- 再次,物联网中台接收到 管理台查询用户信息 请求,以C端App用户标识为条件查询用户详细信息。
- 最后,物联网中台返回C端App用户详细信息,企业管理台使用用户详细信息进行页面渲染。
4.3 设置用户头像
流程说明:
- 首先,C端APP用户登录到物联网中台,获取到物联网中台的用户级调用凭证以及刷新凭证。
- 其次,C端APP用户将要设置为头像的图片上传至云端,即是发起 上传用户头像 请求,物联网中台接收到该请求进行存储返回头像图片对应的链接地址。
- 最后,C端APP用户发起 设置用户基本信息 请求,将上一步的图片链接地址设置为头像地址,物联网中台接收到请求后更新C端APP用户信息。
4.4 设置用户关联的应用
流程说明:
- 首先,B端成员登录到物联网中台,获取到物联网中台的成员级调用凭证以及刷新凭证。
- 其次,B端成员使用物联网中台刷新凭证发起 设置用户关联的应用 请求。
- 再次,物联网中台接收到 设置用户关联的应用 请求,将用户归属到某个应用下,从使得用户发送短信等业务可以使用应用下的通用配置。
- 最后,物联网中台返回设置结果。
4.5 更新用户手机号码
流程说明:
- 首先,C端APP用户登录到物联网中台,获取到物联网中台的用户级调用凭证以及刷新凭证。
- 其次,C端APP用户在APP上输入要更新的手机号,同时向物联网中台发起 请求发送手机验证码,将收到的手机验证码填入APP发起 通过原始密码以及验证码修改手机号码 或者 通过验证码修改手机号码 进行手机更换;由于企业设置了一个手机号码一天内获取验证码的阈值,需要通过图片验证码才能获取手机验证码,因此如果被限流之后APP需要向物联网中台发起 请求用于发送短信的图片验证码 请求获取图片验证码。
- 最后,物联网中台接收到用户更新手机号的请求,进行一系列业务校验之后更新C端App用户关联的手机号码。
- 其中 通过原始密码以及验证码修改手机号码 属于强认证更新, 通过验证码修改手机号码 属于若认证更新 ,各款App按需使用。
五、API列表
5.1 用户基础信息
5.1.1 查询用户详细信息
接口描述
用户自身或者用户归属企业管理者根据标识查询用户的基础信息;用户只可以查询自身的基础信息;企业管理者可以查询企业下的所有用户基础信息
请求方式
GET
请求地址
/v2/user/{user_id}
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业成员 企业用户 Empower |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
user_id | path | true | String | 用户标识 |
请求示例:
{
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
id | true | Int | 用户标识 |
nickname | true | String | 用户昵称 |
status | true | Int | 用户状态 1:启用 2:停用 |
source | true | Int | 用户来源 用户来源,枚举: 1:web 2:android 3:ios 4:wechat 5:qq 6:weibo 7:facebook 8:twitter 9:sms 10:other |
region_id | false | String | 用户所属区标识 |
corp_id | true | String | 企业标识 |
account | true | String | 用户账号 |
create_date | true | String | 用户创建时间,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’ |
is_vaild | true | Boolean | 用户是否激活 |
ali_pay_open_id | false | String | 阿里第三方标识 |
authorize_code | false | String | 用户授权码 |
avatar | false | String | 用户头像 |
qq_open_id | false | String | qq第三方标识 |
wx_open_id | false | String | 微信第三方标识 |
wb_open_id | false | String | 微博第三方标识 |
fb_open_id | false | String | facebook第三方标识 |
register_ip | false | String | 用户注册ip |
tt_open_id | false | String | twitter第三方标识 |
apple_open_id | false | String | 苹果第三方标识 |
other_open_id | false | String | 其他第三方标识 |
google_open_id | false | String | 谷歌第三方标识 |
country | false | String | 用户所在国家 |
province | false | String | 用户所在省份 |
city | false | String | 用户所在城市 |
plugin_id | false | String | 用户归属应用标识 |
gender | true | Int | 用户性别 1: 男 2: 女 3:其他 |
address | false | String | 用户所在地址 |
age | false | Int | 用户年龄 |
birth_date | false | String | 用户出生年月,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’ |
certificate_type | false | Int | 用户认证类型 1: 身份证 2:护照 3: 军官证 4: 港澳通行证 |
certificate_no | false | String | 用户证件号码 |
last_auth_date | false | String | 用户最近一次登录时间,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’ |
passwd_inited | false | String | 用户账号是否初始化密码 |
privacy_code | false | String | 用户隐私码 |
tags | false | Array | 用户标签列表 |
setting | false | Object | 用户设置 |
setting.message | false | Array | 消息接收设置 |
setting.message.type | false | Int | 消息类型的接收设置,枚举: 1:设备告警 2:设备通知 3:系统广播 4:用户发给用户 5:家庭留言 |
setting.message.receive | false | Boolean | 是否接收该类型的消息 |
setting.message_inform | false | Array | 消息提示方式设置 |
setting.message_inform.type | false | Int | 用户消息的提示方式,枚举: 1:提示音 2:震动 |
setting.message_inform.enable | false | Boolean | 提示音方式是否启用 |
返回示例:
{
"id": 456461245,
"nickname": "李清华",
"status": 1,
"source": 1,
"region_id": "1001",
"corp_id": "1235646556dsf56s4df",
"account": "liqinghua@xlink.cn",
"create_date": "2019-12-16T16:00:00.000Z",
"email": "liqinghua@xlink.cn",
"phone": "13838383388",
"active_date": "2019-12-16T16:00:00.000Z",
"is_vaild": true,
"ali_pay_open_id": "126456sdf65dsf",
"authorize_code": "12asd1fdsf",
"avatar": "http://www.baidu.com",
"qq_open_id": "123s1fsdf1we3fdf",
"wx_open_id": "dsfsd1f2sd3f1sdf5",
"wb_open_id": "sdf123fdsf1sd23fsd",
"fb_open_id": "sfsfsdfs123f32sdf65",
"register_ip": "127.0.0.1",
"tt_open_id": "fsdafsd56sd1fds1f2",
"apple_open_id": "sf1sd2f1sdfsd0fdsf",
"other_oppen_id": "sdfs1f2sd1f23sd1f2",
"google_open_id": "sfs21f2sd4f54dff",
"country": "中国",
"province": "广东",
"city": "广州",
"plugin_id": "12d2sf56s4f612ds3",
"gender": 1,
"address": "中国广东广州黄埔",
"age": 18,
"birth_date": "2019-12-16T16:00:00.000Z",
"certificate_type": 1,
"certificate_no": "5621456456sd6faf123df",
"last_auth_date": "2019-12-16T16:00:00.000Z",
"passwd_inited": true,
"privacy_code": "1235s6fds51f65564saf6ds",
"tags": ["123456fds56aewd"],
"setting": {
"message": [{
"type": 1,
"receive": true
}],
"message_inform": [{
"type": 1,
"enable": true
}]
}
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
4001115 | 用户性别未知 |
4001116 | 用户区域错误 |
5.1.2 设置用户基本信息
接口描述
用户自身或者用户归属企业管理者根据标识设置用户的基础信息;用户只可以设置自身的基础信息;企业管理者可以设置企业下的所有用户基础信息
请求方式
PUT
请求地址
/v2/user/{user_id}
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业成员 企业用户 |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
nickname | body | false | String | 用户昵称 |
remark | body | false | String | 用户备注 |
avatar | body | false | String | 用户头像 |
country | body | false | String | 用户所在国家 |
province | body | false | String | 用户所在省份 |
city | body | false | String | 用户所在城市 |
gender | body | true | Int | 用户性别 1: 男 2: 女 3:其他 |
address | body | false | String | 用户所在地址 |
age | body | false | Int | 用户年龄 |
birth_date | body | false | String | 用户出生年月,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’ |
certificate_type | body | false | Int | 用户认证类型 1: 身份证 2:护照 3: 军官证 4: 港澳通行证 |
certificate_no | body | false | String | 用户证件号码 |
tags | body | false | Array | 用户标签列表 |
请求示例:
{
"nickname": "李清华",
"remark": "初级互联网用户",
"tags": ["123565s21fdf"],
"avatar": "http://www.baidu.com",
"address": "中国广东广州黄埔",
"age": 10,
"gender": 1,
"certificate_type": 1,
"certificate_no": "5516463212654655",
"birth_date": "2019-12-16T16:00:00.000Z"
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
无 | 无 | 无 | 无 |
返回示例:
{
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
5.1.3 管理台查询用户信息
接口描述
企业管理台企业成员查询某个C端用户的信息,用户在管理台展示用户具体信息
请求方式
GET
请求地址
/v2/user/{user_id}/fullinfos
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业成员 |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
user_id | path | true | Int | 用户标识 |
请求示例:
{
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
id | true | Int | 用户标识 |
nickname | true | String | 用户昵称 |
status | true | Int | 用户状态 1:启用 2:停用 |
source | true | Int | 用户来源 用户来源,枚举: 1:web 2:android 3:ios 4:wechat 5:qq 6:weibo 7:facebook 8:twitter 9:sms 10:other |
create_date | true | String | 用户创建时间,格式为yyyy-MM-dd’T’HH:mm:ss.SS’Z’ |
is_vaild | true | Boolean | 用户是否激活 |
avatar | false | String | 用户头像 |
country | false | String | 用户所在国家 |
province | false | String | 用户所在省份 |
city | false | String | 用户所在城市 |
gender | true | Int | 用户性别 1: 男 2: 女 3:其他 |
age | false | Int | 用户年龄 |
passwd_inited | false | String | 用户账号是否初始化密码 |
tags | false | Array | 用户标签列表 |
tags.id | false | String | 用户标签标识 |
tags.name | false | String | 用户标签名称 |
tags.type | false | Int | 用户标签类型 1: 黑名单 2: 白名单 3: 灰名单 |
tags.colour | false | String | 用户标签颜色 |
open_ids | false | Array | 用户关联的第三方标识列表 |
open_ids.id | false | Array | 第三方标识 |
open_ids.type | false | Int | 第三方标识类型 1:邮箱 2:手机 3:身份证 4:微信 5:QQ 6:微博 7:指纹 |
返回示例:
{
"id": 1234598522,
"phone": "138383388",
"email": "liqinghua@xlink.cn",
"nickname": "李清华",
"create_date": "2019-12-16T16:00:00.000Z",
"status": 1,
"source": 1,
"is_valid": true,
"avatar": "http://www.baidu.com",
"country": "中国",
"province": "广东",
"city": "广州",
"gender": 1,
"passwd_inited": true,
"age": 10,
"tags": [{
"id": "123566512",
"name": "互联网用户",
"type": 1,
"colour": "FFFFFF"
}],
"open_ids": [{
"id": "23wrer233454",
"type": 1
}]
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
5.1.4 查询用户激活状态
接口描述
C端用户根据自身账号以及密码确认自身账号是否已激活,该接口支持邮箱和手机号作为自身账号,但优先取手机号
请求方式
POST
请求地址
/v2/users/valid
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
corp_id | body | true | String | 用户所在企业 |
phone | body | false | String | 用户手机号 |
body | false | String | 用户邮件 | |
password | body | true | String | 用户密码 |
请求示例:
{
"corp_id": "123564safewd12fd",
"phone": "13838383388",
"email": "liqinghua@xlink.cn",
"password": "Test@#$%^&"
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
valid | true | Boolean | 是否已激活 |
返回示例:
{
"valid":true
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
5.1.5 上传用户头像
接口描述
C端用户上传头像图片得到头像地址,进而将头像地址设置到自身的用户基础信息中,用于登录后个人形象的展示; 该接口非Restful风格接口,其请求体为头像图片二进制流, 图片大小限制为5M
请求方式
POST
请求地址
/v2/user/avatar/upload?avatarType=xxxx
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业用户 |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
avatarType | query | true | String | 头像文件类型,后缀 |
请求示例:
二进制字节流
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
url | true | String | 头像地址 |
返回示例:
{
"url":"http://www.baidu.com"
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
4001060 | 图片大小超过上限 |
5.1.6 设置用户关联的应用
接口描述
企业用户在企业管理台中的用户运营模块,为某个多个用户设置关联的应用标识,如果用户注册的时候有关联某个应用则会进行替换
请求方式
POST
请求地址
/v2/users/binding-plugin
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业成员 |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
plugin_id | body | true | String | 用户关联的应用标识 |
user_ids | body | true | Array | 用户标识列表 |
请求示例:
{
"plugin_id": "ew124daff2d1fdfd",
"user_ids": [
451441268
]
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
无 | 无 | 无 | 无 |
返回示例:
{
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
4041020 | 应用不存在 |
5.1.7 更新用户手机号码
功能描述
C端用户在已登录的情况下,通过手机验证码更换或认证手机号码。该功能包括四个相关接口分别为:
- 请求发送验证码
- 请求用于发送短信的图片验证码
- 通过验证码和密码完成修改
- 通过验证码完成修改
5.1.7.1 请求发送手机验证码
接口描述
用户在已登录的情况下,请求发送验证码,用于进行修改手机号码,用于证明要更新手机号码的合法性
请求方式
POST
请求地址
/v2/user/{user_id}/phone/sms_verifycode
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业用户 |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
user_id | path | true | Int | 用户标识 |
phone | body | true | String | 手机号码 |
phone_zone | body | true | String | 手机号码区号 |
captcha | body | false | String | 手机号获取验证码到达了企业设置的次数之后需要的图片验证码 |
请求示例:
{
"phone":"13838383388",
"phone_zone":"+86",
"captcha":"562126"
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
无 | 无 | 无 | 无 |
返回示例:
{
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
4001094 | 手机号已存在 |
4001052 | 触发手机验证码限制 |
4001154 | 需要图片验证码 |
4001155 | 图片验证码不存在 |
4001156 | 图片验证码错误 |
4001094 | 手机号已存在 |
5.1.7.2 请求用于发送短信的图片验证码
接口描述
用户在已登录的情况下,当请求发送验证码一天内达到一定次数时候,需要验证图片验证码,本接口返回图片验证码地址
请求方式
POST
请求地址
/v2/user/{user_id}/phone/sms_captcha
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业用户 |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
user_id | path | true | Int | 用户标识 |
phone | body | true | String | 手机号码 |
phone_zone | body | true | String | 手机号码区号 |
请求示例:
{
"phone":"13838383388",
"phone_zone":"+86"
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
url | true | String | 图片验证码地址 |
返回示例:
{
"url":"http://www.baidu.com"
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
5.1.7.3 通过原始密码以及验证码修改手机号码
接口描述
用户在已登录的情况下,通过原始密码和验证码修改手机号码,此举属于安全级别较高的修改手机号码
请求方式
PUT
请求地址
/v2/user/{user_id}/phone
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业用户 |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
user_id | path | true | Int | 用户标识 |
phone | body | true | String | 手机号码 |
phone_zone | body | true | String | 手机号码区号 |
verifycode | body | true | String | 手机验证码 |
password | body | true | String | 用户登录密码 |
请求示例:
{
"phone":"13838383388",
"phone_zone":"+86",
"verifycode":"856326",
"password":"Test@#$%^&"
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
无 | 无 | 无 | 无 |
返回示例:
{
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
4001124 | 用户未初始化密码 |
4001094 | 手机号码已被使用 |
5.1.7.4 通过验证码修改手机号码
接口描述
用户在已登录的情况下,通过验证码修改手机号码,不需要原始密码,此举属于安全级别较低的修改手机号码.修改时需要校验Phone号码是否被其他用户已绑定
请求方式
PUT
请求地址
/v2/user/{user_id}/update-phone
请求头
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
Access-Token | true | String | 调用凭证 企业用户 |
Content-Type | true | String | application/json |
请求参数
名称 | 位置 | 必填 | 类型 | 备注 |
---|---|---|---|---|
user_id | path | true | Int | 用户标识 |
phone | body | true | String | 手机号码 |
phone_zone | body | true | String | 手机号码区号 |
verifycode | body | true | String | 手机验证码 |
请求示例:
{
"phone":"13838383388",
"phone_zone":"+86",
"verifycode":"123456"
}
返回参数说明
名称 | 必填 | 类型 | 备注 |
---|---|---|---|
无 | 无 | 无 | 无 |
返回示例:
{
}
错误码:
错误码 | 描述 |
---|---|
4001001 | 请求数据字段验证不通过 |
4001002 | 请求数据必须字段不可为空 |
4031001 | 调用凭证权限被禁止访问 |
4031003 | 无效的调用凭证 |
4031002 | 需要调用凭证 |
4041001 | 接口不存在 |
5031001 | 系统错误 |
4031024 | 权限不足 |
4041011 | 用户不存在 |
4001124 | 用户未初始化密码 |
4001094 | 手机号码已被使用 |